SELECT c8, c1,
       FIRST_VALUE(c1) OVER W as w_fval_c1,
       FIRST_VALUE(c2) OVER W2 as w2_fval_c2,
       FIRST_VALUE(c3) OVER W3 as w3_fval_c3,
       FIRST_VALUE(c4) OVER W_DFLT_FRM AS wDfrm_fval_c4,
       FIRST_VALUE(c5) OVER W2 as w2_fval_c5,
       FIRST_VALUE(c7) OVER W3 as w3_fval_c7,
       FIRST_VALUE(c8) OVER W3 as w3_fval_c8,
       FIRST_VALUE(c9) OVER W_DFLT_FRM AS wDfrm_fval_c9
FROM "t_alltype.parquet"
       WINDOW W AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING ),
       W2 AS ( PARTITION BY c8 ORDER BY c1 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW ),
       W3 AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN CURRENT ROW AND CURRENT ROW ),
       W_DFLT_FRM AS ( PARTITION BY c8 ORDER BY c1 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW )
